package pcvc.common.services;

import java.util.List;
import java.util.Set;

import org.osoa.sca.annotations.Conversational;
import org.osoa.sca.annotations.Service;

import pcvc.common.classes.PCVCAbstractObserver;
import pcvc.common.classes.Question;
import pcvc.common.classes.StudentAnswer;

@Conversational
@Service
public interface IPCVCSubject
{

	public void attach(PCVCAbstractObserver observer);

	public void detach(PCVCAbstractObserver observer);

	public void notifyObservers();

	public void addComment( String comment );

	public Set<StudentAnswer> getAnswers( );

	public void sendQuestion( Question question );

	public List<String> getComments( );
	
	public void addStudentAnswer(StudentAnswer studentAnswer);

	public String getCurrentQuestion();

	public StudentAnswer getAnswer(int studentId);
}